import java.util.ArrayList;

public class EscapatoriaInky implements Movible {

	public void mover(Laberinto unLaberinto, Fantasma unFantasma) {
		
		unFantasma.invertirDireccion();
		
		ArrayList celdas = unFantasma.buscarPosicionAlternativa(unLaberinto);
		Punto target = unLaberinto.buscarObjetivoAlternativoInky();
		ArrayList celdasOrdenadas = unLaberinto.ordenarCeldasPorProximidad(celdas, target);
		Punto proximaPosicion = unFantasma.obtenerPosicionLejana(celdasOrdenadas, unLaberinto);
		unFantasma.cambiarDireccion(proximaPosicion);
		unFantasma.setPosicion(proximaPosicion);
	}
}
